Skip to content

Support jcardsim and J3H081#31

Open
anrp wants to merge 1 commit intophilipWendland:mainfrom
anrp:anrp/j3h081
Open

Support jcardsim and J3H081#31
anrp wants to merge 1 commit intophilipWendland:mainfrom
anrp:anrp/j3h081

Conversation

@anrp
Copy link
Copy Markdown

@anrp anrp commented Mar 20, 2023

jcardsim's PersistentSimulatorRuntime cannot persist Signature objects, so make those temporary and not part of the class object. Additionally, allow skipping checks for RSA4096 and for RSA PSS, as even just testing them can prevent applet installation on certain cards (J3H081).

jcardsim's PersistentSimulatorRuntime cannot persist Signature objects,
so make those temporary and not part of the class object. Additionally,
allow skipping checks for RSA4096 and for RSA PSS, as even just testing
them can prevent applet installation on certain cards (J3H081).
@anrp
Copy link
Copy Markdown
Author

anrp commented Mar 20, 2023

The changes to support jcardsim PersistentSimulatorRuntime may not be a good call, I'm not sure - since Signature objects have to be deleted by the card runtime, and if it doesn't support it it will quickly break.

@philipWendland
Copy link
Copy Markdown
Owner

The changes to support jcardsim PersistentSimulatorRuntime may not be a good call, I'm not sure - since Signature objects have to be deleted by the card runtime, and if it doesn't support it it will quickly break.

I am not sure, but I think I agree. Maybe there is another way?

If I am not mistaken, the J3H081 is an older card that seems to target JavaCard 3.0.1 classic. Please use the legacy version of IsoApplet as indicated in the readme.

@philipWendland
Copy link
Copy Markdown
Owner

@martinpaljak Do you know by chance know whether RequestObjectDeletion is required when using Signature.GetInstance? It could be that it is only required when using "new .." to create objects, but I am not sure.

@philipWendland
Copy link
Copy Markdown
Owner

Hm,

https://trustedconnectivityalliance.org/wp-content/uploads/2024/04/Java-Card-Stepping-Stones_FINAL.pdf
Section "6.4. Object Constructors" indicates that "GetInstance" creates a new object and should be used in the applet constructor.

@martinpaljak
Copy link
Copy Markdown
Contributor

@martinpaljak
Copy link
Copy Markdown
Contributor

Also, have a peek at https://github.com/martinpaljak/JCardEngine (OneShot is not fully implemented, but in the todo list)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants